home *** CD-ROM | disk | FTP | other *** search
/ CD ROM Paradise Collection 4 / CD ROM Paradise Collection 4 1995 Nov.iso / program / swagd_f.zip / DRIVES.SWG / 0016_TRUENAME.PAS.pas < prev    next >
Pascal/Delphi Source File  |  1993-05-28  |  582b  |  22 lines

  1. Program TrueName;  uses DOS;
  2.  
  3.    function RealName(FakeName:String):String;
  4.    Var Temp:String;
  5.    begin
  6.      FakeName := FakeName + #0; { ASCIIZ }
  7.      With Regs do
  8.      begin
  9.        AH := $60;
  10.        DS := Seg(FakeName); SI := Ofs(FakeName[1]);
  11.        ES := Seg(Temp);     DI := OfS(Temp[1]);
  12.        INTR($21,Regs);
  13.        DOSERROR := AX * ((Flags And FCarry) shr 7);
  14.        Temp[0] := #255;
  15.        Temp[0] := CHAR(POS(#0,Temp)-1);
  16.      end;
  17.      If DosError <> 0 then Temp := '';
  18.      RealName := Temp;
  19.    end;
  20.  
  21. begin  writeln( RealName( Paramstr(1) ) end.
  22.